from 期末项目.user.user import User


class UserSystem(object):
    def __init__(self):
        self.user_list = []

    def run(self):
        # 加载文件
        self.load()
        while True:
            # 显示全部的功能
            self.xianshi()
            xz = int(input("请输入你想要实现的功能："))
            if xz == 1:
                self.add_user()
            elif xz == 2:
                self.del_user()
            elif xz == 3:
                self.up_user()
            elif xz == 4:
                self.seOne_user()
            elif xz == 5:
                self.seAll_user()
            elif xz == 6:
                self.save()
            elif xz == 7:
                break

    def xianshi(self):
        print("1、增加user功能")
        print("2、删除user功能")
        print("3、修改user功能")
        print("4、查询一个user功能")
        print("5、查询全部user功能")
        print("6、保存user信息到文件功能")
        print("7、退出程序")

    def add_user(self):
        print("目前已经有的id为：\t",end="")
        for i in self.user_list:
            # end='' 表示输出之后不换行
            print(i.id,"\t",end='')
        # 完成数据的输入
        id = input("请输入你的id值：")
        username = input("请输入你的username值：")
        password = input("请输入你的password值：")
        a = True
        for i in self.user_list:
            if i.id == id:
                print("你这个id值重复了！！！请重新选择")
                a = False
                self.run() # 重新运行run方法
        if a:
            user = User(id,username,password)
            self.user_list.append(user)
            print("以下是增加之后的列表数据：")
            for i in self.user_list:
                print(i)
    def del_user(self):
        """
        要求，最后一个数据不能删除
        如果要删除的是最后一个数据，那么就提示，这是最后一个数据了不能删除
        然后重新执行run方法
        """
        if len(self.user_list) == 1 or len(self.user_list) == 0:
            print("你这个也是不得行！！")
            self.run()
        else:
            a = True
            id = input("请输入想要删除的id值：")
            for i in self.user_list:
                if i.id == id:
                    self.user_list.remove(i)
                    a = False
            print("以下是删除之后的列表数据：")
            for i in self.user_list:
                print(i)
            if a:
                print("没有找到数据")
    def up_user(self):
        """
            修改不能修改他的id值，id值只用展示出来就可以了不用修改
            如果没有找到要修改的数据，就输出没找到相应的数据
        """

        pass
    def seOne_user(self):
        pass
    def seAll_user(self):
        pass
    def save(self):
        pass
    def load(self):
        pass
